// components/popup/popup.ts
const api = require('../../utils/api');

Component({
  /**
   * 组件的属性列表
   */
  properties: {
    visible: {
      type: Boolean,
      value: false,
      observer(newVal) {
        this.setData({ visible: newVal });
      }
    },
    placeholder: {
      type: String,
      value: '写点评论...'
    }
  },
  /**
   * 组件的初始数据
   */
  data: {
    textNum: 0,
    commentContent: '',
    maxlength: 140
  },
  /**
   * 组件的方法列表
   */
  methods: {
    // 关闭弹层
    onMaskClick() {
      this.triggerEvent('closePopup');
      this.setData({
        textNum: 0
      })
    },
    // 输入评论 
    bindInputContent (e) {
      this.setData({
        textNum: e.detail.value.length,
        commentContent: e.detail.value.trim()
      })
    },
    // 发布
    addComment () {
      const that = this;
      api.getUserInfo(true).then(res => {
        // 已登录
        if (res.id) {
          if (!that.data.commentContent) {
            wx.showModal({
                title: '提示',
                content: '评论内容不能为空'
            })
          } else {
            that.triggerEvent('addComment', {
              content: that.data.commentContent,
              author: res.id
            });
          }
        } else {
          // 未登录
          wx.showModal({
            title: '您目前没有登录，请先去登录',
            success (res) {
              // 用户点击确定
              if (res.confirm) {
                wx.navigateTo({
                  url: '/pages/login/login'
                })
              } 
            }
          })          
        }
      })    
    }
  }
})